// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import vuet from './vuet/'
import App from './App'
import router from './router'
import components from './components/'
import httputil from './httputil'
import utils from './utils'
import '@/common.css'/*引入公共样式*/
import global_ from './Global'//引用文件
import store from './store'

// import '../static/css/reset.css'
// import '../static/css/animate.css'



// debugger
// Vue.prototype.$axios = axios    //全局注册，使用方法为:this.$axios
// Vue.prototype.qs = qs

Vue.prototype.GLOBAL = global_//挂载到Vue实例上面

Vue.config.productionTip = false


console.log(window.location.href)


var VueTouch = require('vue-touch')
Vue.use(VueTouch, {name: 'v-touch'})
  .use(vuet)
/* eslint-disable no-new */
/*
* 对可复用组件component直接命名v-xxx
* */
Object.keys(components).forEach((key) => {
  var name = key.replace(/(\w)/, (v) => v.toUpperCase()) // 首字母大写
  Vue.component(`v${name}`, components[key])
})

Vue.prototype.$replaceRouteByPath = function (index) {
  this.$router.replace({ path: index })
}
Vue.prototype.$pushRouteByPath = function (index) {
  this.$router.push({ path: index })
}
Vue.prototype.$pushRouteByJson = function (index) {
  this.$router.push(index)
}
Vue.prototype.$replaceRouteByJson = function (index) {
  this.$router.replace(index)
}
Vue.prototype.$BackRoute = function (index) {
  this.$router.go(index)
}

Vue.prototype.$getLoginStatus = function () {
  var loginstatus =  localStorage.getItem("Accept-Token") == null ? 0:localStorage.getItem("Accept-Token").split("@")[1]
  return loginstatus == "0"?false:true
}

Vue.prototype.$isWxMobileBrowser = function () {
  var ua = window.navigator.userAgent.toLowerCase();
  if(ua.match(/MicroMessenger/i) == 'micromessenger'){
    return true;
  }else{
    return false;
  }
}


// window.addEventListener("popstate", function(e) {
//   debugger
//   localStorage.removeItem("__vuet_store_"+this.app.__vue__.$router.history.current.name+"__")
// }, false);

// window.onload = function() {
//
// }
httputil.request("wechat/jsapi", {url:window.location.href}, function (successresult) {
  wx.config({
    debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
    appId: successresult.config.appId, // 必填，公众号的唯一标识
    timestamp: successresult.config.timestamp, // 必填，生成签名的时间戳
    nonceStr: successresult.config.nonceStr, // 必填，生成签名的随机串
    signature: successresult.config.signature,// 必填，签名，见附录1
    jsApiList: ["updateAppMessageShareData","updateTimelineShareData","chooseWXPay"] // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
  });
  wx.ready(function(){
    // config信息验证后会执行ready方法，所有接口调用都必须在config接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在ready函数中。
  });
  wx.error(function(res){
    debugger
    // config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名。
  });
}, function (errorresult) {

}, "POST", false)

export default new Vue({ router, store,vuet}).$mount('#app')
// new Vue({
//   el: '#app',
//   router,
//   components: { App },
//   template: '<App/>'
// })
